#import "BRBaseView.h"
#import "BRAddressModel.h"
NS_ASSUME_NONNULL_BEGIN
typedef NS_ENUM(NSInteger, BRAddressPickerMode) {
    BRAddressPickerModeArea,
    BRAddressPickerModeCity,
    BRAddressPickerModeProvince
};
typedef void(^BRAddressResultBlock)(BRProvinceModel * _Nullable province, BRCityModel * _Nullable city, BRAreaModel * _Nullable area);
@interface BRAddressPickerView : BRBaseView
@property (nonatomic, assign) BRAddressPickerMode pickerMode;
@property (nullable, nonatomic, copy) NSArray <NSNumber *> *selectIndexs;
@property (nullable, nonatomic, copy) NSArray <NSString *> *selectValues;
@property (nullable, nonatomic, copy) BRAddressResultBlock resultBlock;
@property (nullable, nonatomic, copy) BRAddressResultBlock changeBlock;
@property (nullable, nonatomic, copy) NSArray *dataSourceArr;
- (instancetype)initWithPickerMode:(BRAddressPickerMode)pickerMode;
- (void)show;
- (void)dismiss;
+ (void)showAddressPickerWithSelectIndexs:(nullable NSArray <NSNumber *> *)selectIndexs
                              resultBlock:(nullable BRAddressResultBlock)resultBlock;
+ (void)showAddressPickerWithMode:(BRAddressPickerMode)mode
                     selectIndexs:(nullable NSArray <NSNumber *> *)selectIndexs
                     isAutoSelect:(BOOL)isAutoSelect
                      resultBlock:(nullable BRAddressResultBlock)resultBlock;
+ (void)showAddressPickerWithMode:(BRAddressPickerMode)mode
                       dataSource:(nullable NSArray *)dataSource
                     selectIndexs:(nullable NSArray <NSNumber *> *)selectIndexs
                     isAutoSelect:(BOOL)isAutoSelect
                      resultBlock:(nullable BRAddressResultBlock)resultBlock;
@end
NS_ASSUME_NONNULL_END
